import { http } from "@/utils/http";
// 参数接口
export interface QueryRuleByPlanCodeParams {
  /*计划编码 */
  planCode?: string;

  /*区域 */
  inspectArea?: string;
}

// 响应接口
export interface QueryRuleByPlanCodeRes {
  /*主键id */
  id: number;

  /*规则编码 */
  ruleCode: string;

  /*规则名称 */
  ruleName: string;

  /*巡检类型描述 */
  inspectTypeDesc: string;

  /*厂区描述 */
  facCodeDesc: string;

  /*科室描述 */
  classNameDesc: string;

  /*巡检区域 */
  inspectArea: string;

  /*巡检区域描述 */
  inspectAreaDesc: string;

  /*更新人id */
  updateBy: number;

  /*更新名称 */
  updateName: string;

  /*更新时间 */
  updateTime: Record<string, unknown>;
}

/**
 * 巡检规则-根据计划编码查询规则
 * @param {object} params 根据计划查巡检规则
 * @param {string} params.planCode 计划编码
 * @param {string} params.inspectArea 区域
 * @returns
 */
export function queryRuleByPlanCode(data: QueryRuleByPlanCodeParams): Promise<QueryRuleByPlanCodeRes[]> {
  return http.post(`/digitaltwins/api/v1/inspectRule/queryRuleByPlanCode`, { data });
}
// 参数接口
export interface QueryBylockTimeParams {
  /*锁定时间 */
  lockTime: string;

  /*计划编码 */
  planCode: string;
}

// 响应接口
export interface QueryBylockTimeRes {
  /*任务编码 */
  taskCode: string;

  /*设备巡检内容项 */
  taskTimeNum: string;
}

/**
 * 巡检任务-根据锁定时间查询任务信息
 * @param {object} data 根据日期查询任务巡任务
 * @param {object} data.lockTime 锁定时间
 * @param {string} data.planCode 计划编码
 * @returns
 */
export function queryBylockTime(data: QueryBylockTimeParams): Promise<QueryBylockTimeRes[]> {
  return http.post(`/digitaltwins/api/v1/inspectTask/queryBylockTime`, { data });
}
